Measuring Software Quality: A Case Study
نویسنده
چکیده
The National Security Agency's mission is to provide support for the security of the United States. Over the years, the Agency has become extremely dependent on the software that makes up its information technology infrastructure. NSA has come to view software as a critical resource upon which much of the world's security, prosperity, and economic competitiveness increasingly rests. If anything, dependence on software and its corresponding effect on national security makes it imperative for NSA to accept and maintain only the highest quality software. Cost overruns, or software systems that are defective or of low quality, can impose a significant burden on national security and NSA's mission. The NSA spends many hundreds of millions of dollars annually on software development and maintenance. An internal NSA study shows that an average software project generates only seven to eight lines of delivered code per person per day, at a cost of approximately $70 per line (assuming a $140,000 annual loaded cost for each software developer). Viewed in these terms, it becomes clear that we need to lower software costs by finding ways to improve productivity while still maintaining quality. NSA is no more immune than the rest of the software industry to the problems of low-quality software. I myself spent the first five years of my contractual relationship with NSA on software projects that were consolidated, cut back, or simply stopped at the government's discretion. Most of the problems on those projects resulted from highly unstable, error-prone software. Why does this happen? It happens because software development is intensely manual in nature. A lot of time and effort goes into coding, and software inevitably falls victim to rushed schedules, constantly changing requirements, poor process, failure to adhere to software engineering practices, and indifferent coding practices and standards. Yet software quality requires a defined process supported by automated technology and the application of a base set of measures. The rub is the difficulty in measuring software especially the specific task-level activities of software development executed by a programmer/engineer. The traditional algorithms and metrics from the hard engineering disciplines either come up short when applied to software or are easily misapplied. Software engineering is a discipline that is largely nonparametric and resistant to traditional modes of analysis. Unquestionably, we need common methods of determining the business value of software. We must also generate and promote the human factors and activity statistics necessary to manage and steer software development. So what is NSA doing about software quality?
منابع مشابه
The Role of architectural design in enhancing the life quality in residential complexes of Iranian new towns (Case Study: Andisheh, Pardis, Parand)
The present study examines the design elements in promoting the quality of life by believing that every architectural work fosters the quality of life. In this research, the concept of quality investigated by measuring the level of residentschr('39') satisfaction in the residential complexes of three new towns around Tehran (Andisheh, Pardis, Parand). This study uses the post-residential assess...
متن کاملAn Integrated Approach for Measuring Performance of Network structure: Case study on power plants
Data envelopment analysis (DEA) and balanced scorecard (BSC) are two well-known approaches for measuring performance of decision making units (DMUs). BSC is especially applied with quality measures, whereas, when the quantity measures are used to evaluate, DEA is more appropriate. In the real-world, DMUs usually have complex structures such as network structures. One of the well-known network s...
متن کاملA Methodology for Software Design Quality Assessment of Design Enhancements
The most important measure that must be considered in any software product is its design quality. Measuring of the design quality in the early stages of software development is the key to develop and enhance quality software. Research on object oriented design metrics has produced a large number of metrics that can be measured to identify design problems and assess design quality attributes. Ho...
متن کاملMeasuring Mental Quality of Life of Citizens in Different Areas in Terms of Objective (Physical) Development; Case Study: districts no.:3, 6, and 9 in Mashhad
In this article, it has been tried to analyze the mental satisfaction of the quality of life in different regions in terms of objective development. For this purpose, districts no. 3, 6, and 9 of Mashhad city which through the measures of education, income, and employment were respectively among the deprived, the average, and the privileged regions were selected as the case study areas. Moreove...
متن کاملToward Software Measurement and Quality Analysis of MARF and GIPSY Case Studies a Team 13 SOEN6611-S14 Project Report
It is no longer a debate that quality is an essential requirement in any software product, especially in a highly competitive market and a context of mission critical product. To obtain better product quality, software metrics are the only reliable indicators provided to assess and measure this attribute of a software product. Several metrics have been elaborated but none of them were really co...
متن کاملMeasuring the impact of changes to the complexity and coupling properties of automotive software systems
BACKGROUND: In the past few decades, exponential increase in the amount of software used in cars has been recorded. Complex software is hard to maintain, especially due to constant changes which are essential in a car evolution process. To avoid the possible negative impact of changes on the system quality attributes, appropriate measurements of change are needed. METHOD: The research presented...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IEEE Computer
دوره 29 شماره
صفحات -
تاریخ انتشار 1996